<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 数组(二维数组)转map  
    // (1) 普通遍历转换
    var arr = [1,2,3];
    var o = {demo:"test"};

    var list = [[100,100],["hello","world"],[true,false],[null,undefined],[arr,arr],[o,o]];

    var m = new Map();
    list.forEach((item)=>{
        console.log(item);
        var [key,val] = item;  // var key = item[0]
        m.set(key,val);
    })
    console.log(m);

    // 拓展:
    // 函数的参数解构: 如果函数的参数,接收的是数组和对象,可以直接对参数进行解构
    // var m = new Map();
    // list.forEach(([key,val],index)=>{  // 可以理解为 [key,val] = item
    //     m.set(key,val);
    // })
    // console.log(m);

    // (2) Map结构直接接收二维数组
    // var m = new Map(list);
    // console.log(m);



    // Map转数组
    // ...   和 Array.from()
    var list = Array.from(m);
    console.log(list);
    
    var list = [...m];
    console.log(list);
</script>
</html>